Shift Arithmetic Right

function SAR_4(Value: Integer): Integer; // Value div 16

function SAR_8(Value: Integer): Integer; // Value div 256

function SAR_9(Value: Integer): Integer; // Value div 512

function SAR_11(Value: Integer): Integer;

function SAR_12(Value: Integer): Integer;

function SAR_13(Value: Integer): Integer;

function SAR_14(Value: Integer): Integer;

function SAR_15(Value: Integer): Integer;

function SAR_16(Value: Integer): Integer;

Description

Auxiliary arithmetic shift right routines (SAR). These can be used for faster division of signed integers. SAR differs from the shr instruction by preserving the sign of the Value. For example, calling SAR_4 equals Value div 16 (2^4) and calling SAR_9 equels Value div 512 (2^9).